package cn.jetpiece.cloud.joss.api.basic.model.params;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 创建对象存储配置记录
 * </p>
 *
 * @author XuJZ
 * @since 2020-09-05
 */
@Data
@ApiModel
public class ObjectPathParam implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 对象信息
     */
    @NotEmpty(message = "对象信息不能为空")
    @ApiModelProperty(value = "对象信息", required = true)
    private List<ObjectPathInfo> infos;

    /**
     * 预签名,生成访问、上传预签名
     */
    @ApiModelProperty(value = "预签名,生成访问、上传预签名")
    private String preSign;

    /**
     * 预签名超时时间,单位:秒,默认6分钟
     */
    @ApiModelProperty(value = "预签名超时时间,单位:秒,默认6分钟")
    private Long preExpires;

    /**
     * 文件路径
     */
    @ApiModelProperty(value = "文件路径")
    private String filePath;

    /**
     * 重命名
     */
    @ApiModelProperty(value = "重命名,以UUID填充名称")
    private Boolean rename;
}
